#函数是第一类对象

#闭包 内部函数访问外部函数的变量
def outer_function(x):
    # 外部函数定义
    def inner_function(y):
        # 内部函数定义
        return x + y  # 访问外部函数的变量 x

    return inner_function  # 返回内部函数的引用


# 创建一个闭包实例
add_five = outer_function(5)  # x = 5

# 使用闭包
result = add_five(10)  # y = 10, 结果应该是 5 + 10
print(result)  # 输出: 15
